package service.v2;

import java.util.List;
import java.util.Map;

import model.AddressVO;
import model.LogOrder;
import model.MemberVO;
import model.OrderTimer;
import model.OrderVO;
import model.RefuseReasonVO;
import model.StandardVO;

public interface OrderService {

	List<OrderVO> getList(OrderVO orderVO);
	
	
	List<OrderVO> getAllOrderListByMemberId(OrderVO OrderVo);
	
	List<OrderVO> getAllOrderListByMemberIdTwoState(OrderVO OrderVo);
	
	int getTotal(OrderVO OrderVo);
	
	int getTotalTwoState(OrderVO OrderVo);
	
	OrderVO getOrderConfirm(String order_id);
	
	OrderVO getUnPayCancel(String order_id);
	
	OrderVO getOrderDealCancelOnMain(String order_id);
	
	OrderVO getOrderUnpaid(String order_id);
	
	OrderVO getOrderUnsend(String order_id);
	
	OrderVO getOrderUnReceived(String order_id);

	OrderVO getOrderSuccess(String order_id);
	
	void OrderDelete(String order_id);
	
	boolean judgeState(String order_id,String order_state);
	
	void updOrderUnpaidToCancel(String order_id,String member_id);
	
	void updOrderInsertLogOrder(String member_id,String order_id,String cancel_reason);
	
	List<LogOrder> getOrderLogByOrderId(String order_id,String type);
	
	List<LogOrder> getCencalOrderLog(String order_id);
	
	void cancelPaidCancel(String member_id ,String order_id);
	
	OrderVO getOrderPaidCancel(String order_id);
	
	String getTotalPriceByOrderId(String order_id);
	
	void updOrderPayMethod(OrderVO order);

	int getStateNum(String member_id, int type);
	
	List<RefuseReasonVO> getAllRefuseMsg(String refuseReasonPid);
	
	OrderVO  getOrderDetails(String order_id);
	
	void checkOrderTime(String member_id,String order_id) throws Exception;
	
	/*void updOrderState(String order_id,String state);*/
	
	void updOrderStateAndRecieveTime(String member_id,String order_id,String state);
	
	String getTotalPriceByPayNo(String[] order_id_List,String member_id);
	
	int getOrderCount(String[] order_id_List,String member_id);
	
	String getTotalTicketByPayNo(String[] order_id_List,String member_id);
	
	
	
	int stopOrderPayTimerByPayNo(String[] order_id_List);
	
	OrderVO getOrderAddressByPayNo(String[] order_id_List);
	
	void InsertLogOrder(LogOrder log);
	
	OrderVO getOrderById(String id);
	
	String getTotalTicketByOrderId(String order_id);
	
	String getToTalStandardTicket(String order_id);
	
	String getToTalpackageTicket(String package_id);
	
	int checkOrderPayState(String[] order_id_List);
	
	int checkOrderBackState(String order_id);
	
	void updOrderTimer(String member_id,String order_id) throws Exception;
	
	String getOrderBackSumPrice(String out_trade_no);
	
	OrderTimer getReviceTimerByIdType(String order_id,String type);
	
	List<String> getRealPayOrderId(String[] order_id_list);
	
	StandardVO getStandardById(String standard_id);

	String getOrderGoodName(String id);

	Map addPlaceOrder(MemberVO member, AddressVO addressVO, String cart_status, String cart_id, String ticket_status,
			String order_from, String standard_ids, String standard_nums,String country);


	List<OrderVO> getSimpleOrderByIdList(String[] order_id_List);


	void updTest();
	
}
